# -*- coding: utf-8 -*-
"""配置模块初始化"""

# 显式导入constants模块的常量
from .constants import (
    DATA_VALIDATION_RULES,
    PACKAGE_TYPE,
    MATCH_STATUS,
    FIELD_NAMES,
    REQUIRED_FIELDS,
    HISTORICAL_FIELDS,
    UI_SETTINGS,
    FILE_FORMATS,
    PROCESSING_STAGES,
    CLASSIFICATION_CATEGORIES,
    ITERATIVE_SPLITTING,
    EXPORT_SETTINGS,
    MATCHING_CONFIG,
)

# 显式导入exceptions模块的异常类
from .exceptions import (
    AppException,
    ConfigurationError,
    DataValidationError,
    ExcelProcessingError,
    CustomFileNotFoundError,
    MatchingAlgorithmError,
    ExportError,
    DataConsistencyError,
)

# 显式导入settings模块的设置
from .settings import (
    APP_NAME,
    APP_VERSION,
    DATA_DIR,
    RESOURCES_DIR,
    OUTPUT_DIR,
    LOGS_DIR,
    LOG_LEVEL,
    LOG_FILE_NAME,
    EXCEL_TEMPLATE_DIR,
    EXCEL_DEFAULT_SHEET,
    MATCHING_THRESHOLD,
    MAX_ITERATIONS,
)

__all__ = [
    # constants模块
    "DATA_VALIDATION_RULES",
    "PACKAGE_TYPE",
    "MATCH_STATUS",
    "FIELD_NAMES",
    "REQUIRED_FIELDS",
    "HISTORICAL_FIELDS",
    "UI_SETTINGS",
    "FILE_FORMATS",
    "PROCESSING_STAGES",
    "CLASSIFICATION_CATEGORIES",
    "ITERATIVE_SPLITTING",
    "EXPORT_SETTINGS",
    "MATCHING_CONFIG",
    # exceptions模块
    "AppException",
    "ConfigurationError",
    "DataValidationError",
    "ExcelProcessingError",
    "CustomFileNotFoundError",
    "MatchingAlgorithmError",
    "ExportError",
    "DataConsistencyError",
    # settings模块
    "APP_NAME",
    "APP_VERSION",
    "DATA_DIR",
    "RESOURCES_DIR",
    "OUTPUT_DIR",
    "LOGS_DIR",
    "LOG_LEVEL",
    "LOG_FILE_NAME",
    "EXCEL_TEMPLATE_DIR",
    "EXCEL_DEFAULT_SHEET",
    "MATCHING_THRESHOLD",
    "MAX_ITERATIONS",
]
